home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CUCD / Sound / PreludeAMP / src / dump.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-01-25  |  1.3 KB  |  65 lines

  1. /* this file is a part of amp software, (C) tomislav uzelac 1996,1997
  2. */
  3.  
  4. /* dump.c  binary/hex dump from buffer
  5.  * 
  6.  * Created by: tomislav uzelac  May 1996
  7.  * Last modified by: tomislav May 31 1997
  8.  */
  9. #include <unistd.h>
  10. #include <string.h>
  11.  
  12. #include "audio.h"
  13. #include "getbits.h"
  14.  
  15. #define DUMP
  16. #include "dump.h"
  17.  
  18. /* no hex dump, sorry
  19.  */
  20. void dump(int *length)   /* in fact int length[4] */
  21. {
  22. int i,j;
  23. int _data,space=0;
  24.     printf(" *********** binary dump\n");
  25.     _data=data;
  26.     for (i=0;i<4;i++) {
  27.         for (j=0;j<space;j++) printf(" ");
  28.         for (j=0;j<length[i];j++) {
  29.             printf("%1d",(buffer[_data/8] >> (7-(_data&7)) )&1 );
  30.             space++;
  31.             _data++;
  32.             _data&=8*BUFFER_SIZE-1;
  33.             if (!(_data & 7)) {
  34.                 printf(" ");
  35.                 space++;
  36.                 if (space>70) {
  37.                     printf("\n");
  38.                     space=0;
  39.                 }
  40.             }
  41.         }
  42.         printf("~\n");
  43.     }
  44. }
  45.  
  46. void show_header(struct AUDIO_HEADER *header) {
  47.     int bitrate=t_bitrate[header->ID][3-header->layer][header->bitrate_index];
  48.     int fs=t_sampling_frequency[header->ID][header->sampling_frequency];
  49.     int mpg,layer;
  50.     char stm[8];
  51.  
  52.     if (A_QUIET) return;
  53.     layer=4-header->layer;
  54.     if (header->ID==1) mpg=1;
  55.     else mpg=2;
  56.     if (header->mode==3) strcpy(stm,"mono");
  57.     else strcpy(stm,"stereo");
  58.  
  59.     printf("\n\
  60. Properties:    %s %dHz\n\
  61. Coding Method: MPEG%1d.0 layer%1d\n\
  62. Bitrate:       %dkbit/s\n"\
  63.         ,stm,fs,mpg,layer,bitrate);
  64. }
  65.